package name.huliqing.qfaces.temp;
//package name.huliqing.qfaces.component;
//
//import java.util.List;
//
//import javax.el.MethodExpression;
//import javax.el.ValueExpression;
//import javax.faces.component.UIInput;
//import javax.faces.context.FacesContext;
//
//import name.huliqing.qfaces.QFaces;
//
//public class ____20100701_Calendar extends UIInput {
//	
//	// As calendar, 绑定后台方法,该方法向后台传递年份及月分，并获取这个月分存在的活动日期列表，
//	// 返回类型为List<ActionDate>，其中包含了这个月份所有存在活动事件的日期及事件描述
//	private MethodExpression listener;
//	
//	// As calendar, 日历的链接地址，当运行方式为“非POP”时，如果某个日期存在“活动”则
//	// 点击某一个日期时需要连接到目标页面。href即为连接地址。
//	private String href; 
//	
//	// As calendar, href连接地址的打开方式，如“_blank”,"_self", "_parent"等
//	private String target;
//	
//	// As calendar, 是否显示“活动事件”面板，当某一天存在活动事件时，鼠标移动到日期上面会弹出该窗口
//	private Boolean showActionPanel;
//	
//	// As pop, 渲染为“弹出窗口”模式，这个模式将作为一般的日期输入组件来用
//	private Boolean renderAsPop;
//	
//	// As pop, 
//	// 参数For, 该参数指定到目标客户端组件ID，也就是将选择的日期赋值给for参数所
//	// 指定的目标组件，格式如下 "targetId1,targetId2,targetId3" 用半角逗号分隔
//	// 这样可以将日期值赋给多个目标组件，并且需要能够指定到一般的HTML客户端组件
//	// 这个参数只有在renderAsPop属性为true的时候才有意义
//	private String _for;
//	
//	// As pop, 图片URL：Open Button的图片URL
//	private String imgFlagSrc;
//	
//	// As pop, 日期格式，如："yyyy-MM-dd"
//	private String pattern;
//	
//	// As pop, value属性所绑定的日期的时区,如：GMT+8
//	private String timeZone;
//	
//	// As pop, InputField是否渲染为“只读”
//	private Boolean readOnly;
//	
//	// As pop, 是否自动关闭，即用户选择某个日期之后关闭日历组件
//	private Boolean autoClose;
//	
//	// "月分描述", 如：“一月,二月,三月,,,”， 用半角逗号分隔
//	private String strMonth;
//	
//	// “一周描述”， 如：“日,一,二,三,四,五,六”, 用半角逗号分隔
//	private String strWeek;
//	
//	// 图片URL：“上一个月”
//	private String imgPreviousSrc;
//	
//	// 图片URL：“下一个月”
//	private String imgNextSrc;
//	
//	// 图片URL：“下拉框箭头”,用于弹出框选择年份，月份,
//	private String imgSelectSrc;
//	
//	// 起始年份,首次打开窗口时，年份选择列表的默认起始年份,注：该值只有在目标组件的值为空时，才有效。
//	// 如果目标组件的值不为空，则以目标组件的年份值- visibleYear / 2 作为真正的startYear,这样保证
//	// 年份选择列表的目标组件年份值始终处于列表的正中
//	private Integer startYear;
//	
//	// 年份选择列表的可见个数
//	private Integer visibleYear;
//	
//	// 日期组件的样式类
//	// input组件的样式(这个input只有在绑定了value之后才会出现)
//	private String style;
//	
//	// input组件的样式类（同上）
//	private String styleClass;
//	
//	// 组件日期区域的样式（不包含年份,月份）,该区域内含一个table,table中即为存放一个月中的1-31天的日期
//	private String styleClassCalendarBody;
//	
//	// Footer部分的样式类（注：不是Today区域的样式类，
//	// 但是Today区域被包含于Footer区域，所以这个样式同样会影响Today区域）
//	// 注：这个样式类不会通过js传递到客户端
//	private String styleClassCalendarFooter;
//	
//	// 当前选中的年份样式
//	private String styleClassYearSelected;
//	
//	// 当前选中的月份样式
//	private String styleClassMonthSelected;
//	
//	// 当前选中的日期样式
//	private String styleClassDaySelected;
//	
//	// 当前的日期样式
//	private String styleClassDayCurrent;
//	
//	// 鼠标放上时，日期的响应样式
//	private String styleClassDayOnmouseover;
//	
//	// 显示的年份的样式
//	private String styleClassYear;
//	
//	// 显示的月份的样式
//	private String styleClassMonth;
//	
//	// 显示的星期的样式
//	private String styleClassWeek;
//	
//	// 日期的样式
//	private String styleClassDayOfMonth;
//	
//	// “活动事件描述面板”的样式类
//	private String styleClassActionPanel;
//	
//	// “活动事件日期”的样式类
//	private String styleClassActionDate;
//	
//	private Frame frame;
//	
//	public ____20100701_Calendar() {
//		super();
//		setRendererType("name.huliqing.qfaces.render.CalendarRenderer");
//	}
//	
//	@Override
//	public String getFamily() {
//		return "name.huliqing.qfaces.render.CalendarFamily";
//	}
//
//	private Object[] _values;
//	@Override
//	public void restoreState(FacesContext fc, Object state) {
//		_values = (Object[]) state;
//		super.restoreState(fc, _values[0]);
//		this.listener = (MethodExpression) _values[1];
//		this.href = (String) _values[2];
//		this.target = (String) _values[3];
//		this.showActionPanel = (Boolean) _values[4];
//		this.renderAsPop = (Boolean) _values[5];
//		this._for = (String) _values[6];
//		this.imgFlagSrc = (String) _values[7];
//		this.pattern = (String) _values[8];
//		this.timeZone = (String) _values[9];
//		this.readOnly = (Boolean) _values[10];
//		this.autoClose = (Boolean) _values[11];
//		this.strMonth = (String) _values[12];
//		this.strWeek = (String) _values[13];
//		this.imgPreviousSrc = (String) _values[14];
//		this.imgNextSrc = (String) _values[15];
//		this.imgSelectSrc = (String) _values[16];
//		this.startYear = (Integer) _values[17];
//		this.visibleYear = (Integer) _values[18];
//		this.style = (String) _values[19];
//		this.styleClass = (String) _values[20];
//		this.styleClassCalendarBody = (String) _values[21];
//		this.styleClassCalendarFooter = (String) _values[22];
//		this.styleClassYearSelected = (String) _values[23];
//		this.styleClassMonthSelected = (String) _values[24];
//		this.styleClassDaySelected = (String) _values[25];
//		this.styleClassDayCurrent = (String) _values[26];
//		this.styleClassDayOnmouseover = (String) _values[27];
//		this.styleClassYear = (String) _values[28];
//		this.styleClassMonth = (String) _values[29];
//		this.styleClassWeek = (String) _values[30];
//		this.styleClassDayOfMonth = (String) _values[31];
//		this.styleClassActionPanel = (String) _values[32];
//		this.styleClassActionDate = (String) _values[33];
//		this.frame = (Frame) _values[34];
//	}
//	
//	@Override
//	public Object saveState(FacesContext fc) {
//		if (_values == null)
//			_values = new Object[35];
//		_values[0] = super.saveState(fc);
//		_values[1] = this.listener;
//		_values[2] = this.href;
//		_values[3] = this.target;
//		_values[4] = this.showActionPanel;
//		_values[5] = this.renderAsPop;
//		_values[6] = this._for;
//		_values[7] = this.imgFlagSrc;
//		_values[8] = this.pattern;
//		_values[9] = this.timeZone;
//		_values[10] = this.readOnly;
//		_values[11] = this.autoClose;
//		_values[12] = this.strMonth;
//		_values[13] = this.strWeek;
//		_values[14] = this.imgPreviousSrc;
//		_values[15] = this.imgNextSrc;
//		_values[16] = this.imgSelectSrc;
//		_values[17] = this.startYear;
//		_values[18] = this.visibleYear;
//		_values[19] = this.style;
//		_values[20] = this.styleClass;
//		_values[21] = this.styleClassCalendarBody;
//		_values[22] = this.styleClassCalendarFooter;
//		_values[23] = this.styleClassYearSelected;
//		_values[24] = this.styleClassMonthSelected;
//		_values[25] = this.styleClassDaySelected;
//		_values[26] = this.styleClassDayCurrent;
//		_values[27] = this.styleClassDayOnmouseover;
//		_values[28] = this.styleClassYear;
//		_values[29] = this.styleClassMonth;
//		_values[30] = this.styleClassWeek;
//		_values[31] = this.styleClassDayOfMonth;
//		_values[32] = this.styleClassActionPanel;
//		_values[33] = this.styleClassActionDate;
//		_values[34] = this.frame;
//		
//		return _values;
//	}
//	
//	private Object getFromExp(String name) {
//		ValueExpression _ve = getValueExpression(name);
//        if (_ve != null)
//            return _ve.getValue(getFacesContext().getELContext());
//        else
//            return null;
//	} 
//	
//	// ---- Getter
//	
//	public MethodExpression getListener() {
//		return this.listener;
//	}
//	
//	public void setListener(MethodExpression listener) {
//		this.listener = listener;
//	}
//	
//	public void setListenerAsExpression(String methodExpression) {
//		MethodExpression me = QFaces.createMethodExpression(
//				methodExpression, 
//				List.class, 
//				new Class[]{Integer.class, Integer.class});
//		setListener(me);
//	}
//	
//	public String getFor() {
//		if (this._for != null)
//			return this._for;
//		return (String) this.getFromExp("for");
//	}
//
//	public String getHref() {
//		if (this.href != null)
//			return this.href;
//		return (String) this.getFromExp("href");
//	}
//
//	public String getTarget() {
//		if (this.target != null)
//			return this.target;
//		return (String) this.getFromExp("target");
//	}
//
//	public Boolean getShowActionPanel() {
//		if (this.showActionPanel != null) {
//			return this.showActionPanel;
//		}
//		return (Boolean) this.getFromExp("showActionPanel");
//	}
//
//	public Boolean getRenderAsPop() {
//		if (this.renderAsPop != null) {
//			return this.renderAsPop;
//		}
//		return (Boolean) this.getFromExp("renderAsPop");
//	}
//
//	public String getImgFlagSrc() {
//		if (this.imgFlagSrc != null) {
//			return this.imgFlagSrc;
//		}
//		return (String) this.getFromExp("imgFlagSrc");
//	}
//
//	public String getPattern() {
//		if (this.pattern != null) {
//			return this.pattern;
//		}
//		return (String) this.getFromExp("pattern");
//	}
//
//	public String getTimeZone() {
//		if (this.timeZone != null) {
//			return this.timeZone;
//		}
//		return (String) this.getFromExp("timeZone");
//	}
//
//	public Boolean getReadOnly() {
//		if (this.readOnly != null) {
//			return this.readOnly;
//		}
//		return (Boolean) this.getFromExp("readOnly");
//	}
//
//	public Boolean getAutoClose() {
//		if (this.autoClose != null) {
//			return this.autoClose;
//		}
//		return (Boolean) this.getFromExp("autoClose");
//	}
//
//	public String getStrMonth() {
//		if (this.strMonth != null) {
//			return this.strMonth;
//		}
//		return (String) this.getFromExp("strMonth");
//	}
//
//	public String getStrWeek() {
//		if (this.strWeek != null) {
//			return this.strWeek;
//		}
//		return (String) this.getFromExp("strWeek");
//	}
//
//	public String getImgPreviousSrc() {
//		if (this.imgPreviousSrc != null) {
//			return this.imgPreviousSrc;
//		}
//		return (String) this.getFromExp("imgPreviousSrc");
//	}
//
//	public String getImgNextSrc() {
//		if (this.imgNextSrc != null) {
//			return this.imgNextSrc;
//		}
//		return (String) this.getFromExp("imgNextSrc");
//	}
//
//	public String getImgSelectSrc() {
//		if (this.imgSelectSrc != null) {
//			return this.imgSelectSrc;
//		}
//		return (String) this.getFromExp("imgSelectSrc");
//	}
//
//	public Integer getStartYear() {
//		if (this.startYear != null) {
//			return this.startYear;
//		}
//		return (Integer) this.getFromExp("startYear");
//	}
//
//	public Integer getVisibleYear() {
//		if (this.visibleYear != null) {
//			return this.visibleYear;
//		}
//		return (Integer) this.getFromExp("visibleYear");
//	}
//
//	public String getStyle() {
//		if (this.style != null) {
//			return this.style;
//		}
//		return (String) this.getFromExp("style");
//	}
//
//	public String getStyleClass() {
//		if (this.styleClass != null) {
//			return this.styleClass;
//		}
//		return (String) this.getFromExp("styleClass");
//	}
//
//	public String getStyleClassCalendarBody() {
//		if (this.styleClassCalendarBody != null) {
//			return this.styleClassCalendarBody;
//		}
//		return (String) this.getFromExp("styleClassCalendarBody");
//	}
//
//	public String getStyleClassCalendarFooter() {
//		if (this.styleClassCalendarFooter != null) {
//			return this.styleClassCalendarFooter;
//		}
//		return (String) this.getFromExp("styleClassCalendarFooter");
//	}
//
//	public String getStyleClassYearSelected() {
//		if (this.styleClassYearSelected != null) {
//			return this.styleClassYearSelected;
//		}
//		return (String) this.getFromExp("styleClassYearSelected");
//	}
//
//	public String getStyleClassMonthSelected() {
//		if (this.styleClassMonthSelected != null) {
//			return this.styleClassMonthSelected;
//		}
//		return (String) this.getFromExp("styleClassMonthSelected");
//	}
//
//	public String getStyleClassDaySelected() {
//		if (this.styleClassDaySelected != null) {
//			return this.styleClassDaySelected;
//		}
//		return (String) this.getFromExp("styleClassDaySelected");
//	}
//
//	public String getStyleClassDayCurrent() {
//		if (this.styleClassDayCurrent != null) {
//			return this.styleClassDayCurrent;
//		}
//		return (String) this.getFromExp("styleClassDayCurrent");
//	}
//
//	public String getStyleClassDayOnmouseover() {
//		if (this.styleClassDayOnmouseover != null) {
//			return this.styleClassDayOnmouseover;
//		}
//		return (String) this.getFromExp("styleClassDayOnmouseover");
//	}
//
//	public String getStyleClassYear() {
//		if (this.styleClassYear != null) {
//			return this.styleClassYear;
//		}
//		return (String) this.getFromExp("styleClassYear");
//	}
//
//	public String getStyleClassMonth() {
//		if (this.styleClassMonth != null) {
//			return this.styleClassMonth;
//		}
//		return (String) this.getFromExp("styleClassMonth");
//	}
//
//	public String getStyleClassWeek() {
//		if (this.styleClassWeek != null) {
//			return this.styleClassWeek;
//		}
//		return (String) this.getFromExp("styleClassWeek");
//	}
//
//	public String getStyleClassDayOfMonth() {
//		if (this.styleClassDayOfMonth != null) {
//			return this.styleClassDayOfMonth;
//		}
//		return (String) this.getFromExp("styleClassDayOfMonth");
//	}
//
//	public String getStyleClassActionPanel() {
//		if (this.styleClassActionPanel != null) {
//			return this.styleClassActionPanel;
//		}
//		return (String) this.getFromExp("styleClassActionPanel");
//	}
//
//	public String getStyleClassActionDate() {
//		if (this.styleClassActionDate != null) {
//			return this.styleClassActionDate;
//		}
//		return (String) this.getFromExp("styleClassActionDate");
//	}
//
//	public Frame getFrame() {
//		return frame;
//	}
//	
//	// ---- Setter
//	
//	public void setFor(String _for) {
//		this._for = _for;
//	}
//
//	public void setHref(String href) {
//		this.href = href;
//	}
//
//	public void setTarget(String target) {
//		this.target = target;
//	}
//
//	public void setShowActionPanel(Boolean showActionPanel) {
//		this.showActionPanel = showActionPanel;
//	}
//
//	public void setRenderAsPop(Boolean renderAsPop) {
//		this.renderAsPop = renderAsPop;
//	}
//
//	public void setImgFlagSrc(String imgFlagSrc) {
//		this.imgFlagSrc = imgFlagSrc;
//	}
//
//	public void setPattern(String pattern) {
//		this.pattern = pattern;
//	}
//
//	public void setTimeZone(String timeZone) {
//		this.timeZone = timeZone;
//	}
//
//	public void setReadOnly(Boolean readOnly) {
//		this.readOnly = readOnly;
//	}
//
//	public void setAutoClose(Boolean autoClose) {
//		this.autoClose = autoClose;
//	}
//
//	public void setStrMonth(String strMonth) {
//		this.strMonth = strMonth;
//	}
//
//	public void setStrWeek(String strWeek) {
//		this.strWeek = strWeek;
//	}
//
//	public void setImgPreviousSrc(String imgPreviousSrc) {
//		this.imgPreviousSrc = imgPreviousSrc;
//	}
//
//	public void setImgNextSrc(String imgNextSrc) {
//		this.imgNextSrc = imgNextSrc;
//	}
//
//	public void setImgSelectSrc(String imgSelectSrc) {
//		this.imgSelectSrc = imgSelectSrc;
//	}
//
//	public void setStartYear(Integer startYear) {
//		this.startYear = startYear;
//	}
//
//	public void setVisibleYear(Integer visibleYear) {
//		this.visibleYear = visibleYear;
//	}
//
//	public void setStyle(String style) {
//		this.style = style;
//	}
//
//	public void setStyleClass(String styleClass) {
//		this.styleClass = styleClass;
//	}
//
//	public void setStyleClassCalendarBody(String styleClassCalendarBody) {
//		this.styleClassCalendarBody = styleClassCalendarBody;
//	}
//
//	public void setStyleClassCalendarFooter(String styleClassCalendarFooter) {
//		this.styleClassCalendarFooter = styleClassCalendarFooter;
//	}
//
//	public void setStyleClassYearSelected(String styleClassYearSelected) {
//		this.styleClassYearSelected = styleClassYearSelected;
//	}
//
//	public void setStyleClassMonthSelected(String styleClassMonthSelected) {
//		this.styleClassMonthSelected = styleClassMonthSelected;
//	}
//
//	public void setStyleClassDaySelected(String styleClassDaySelected) {
//		this.styleClassDaySelected = styleClassDaySelected;
//	}
//
//	public void setStyleClassDayCurrent(String styleClassDayCurrent) {
//		this.styleClassDayCurrent = styleClassDayCurrent;
//	}
//
//	public void setStyleClassDayOnmouseover(String styleClassDayOnmouseover) {
//		this.styleClassDayOnmouseover = styleClassDayOnmouseover;
//	}
//
//	public void setStyleClassYear(String styleClassYear) {
//		this.styleClassYear = styleClassYear;
//	}
//
//	public void setStyleClassMonth(String styleClassMonth) {
//		this.styleClassMonth = styleClassMonth;
//	}
//
//	public void setStyleClassWeek(String styleClassWeek) {
//		this.styleClassWeek = styleClassWeek;
//	}
//
//	public void setStyleClassDayOfMonth(String styleClassDayOfMonth) {
//		this.styleClassDayOfMonth = styleClassDayOfMonth;
//	}
//
//	public void setStyleClassActionPanel(String styleClassActionPanel) {
//		this.styleClassActionPanel = styleClassActionPanel;
//	}
//
//	public void setStyleClassActionDate(String styleClassActionDate) {
//		this.styleClassActionDate = styleClassActionDate;
//	}
//
//	public void setFrame(Frame frame) {
//		this.frame = frame;
//	}
//	
//	
//}
